<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
<meta http-equiv="X-UA-Compatible" content="IE=9"/>
<meta name="generator" content="Doxygen 1.8.9.1"/>
<title>IDA SDK: op_t Class Reference</title>
<link href="tabs.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="jquery.js"></script>
<script type="text/javascript" src="dynsections.js"></script>
<link href="search/search.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="search/searchdata.js"></script>
<script type="text/javascript" src="search/search.js"></script>
<script type="text/javascript">
  $(document).ready(function() { init_search(); });
</script>
<link href="doxygen.css" rel="stylesheet" type="text/css" />
</head>
<body>
<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
<div id="titlearea">
<table cellspacing="0" cellpadding="0">
 <tbody>
 <tr style="height: 56px;">
  <td style="padding-left: 0.5em;">
   <div id="projectname">IDA SDK
   </div>
  </td>
 </tr>
 </tbody>
</table>
</div>
<!-- end header part -->
<!-- Generated by Doxygen 1.8.9.1 -->
<script type="text/javascript">
var searchBox = new SearchBox("searchBox", "search",false,'Search');
</script>
  <div id="navrow1" class="tabs">
    <ul class="tablist">
      <li><a href="index.html"><span>Main&#160;Page</span></a></li>
      <li><a href="files.html"><span>Header&#160;Files</span></a></li>
      <li class="current"><a href="annotated.html"><span>Classes</span></a></li>
      <li><a href="modules.html"><span>Modules</span></a></li>
      <li>
        <div id="MSearchBox" class="MSearchBoxInactive">
        <span class="left">
          <img id="MSearchSelect" src="search/mag_sel.png"
               onmouseover="return searchBox.OnSearchSelectShow()"
               onmouseout="return searchBox.OnSearchSelectHide()"
               alt=""/>
          <input type="text" id="MSearchField" value="Search" accesskey="S"
               onfocus="searchBox.OnSearchFieldFocus(true)" 
               onblur="searchBox.OnSearchFieldFocus(false)" 
               onkeyup="searchBox.OnSearchFieldChange(event)"/>
          </span><span class="right">
            <a id="MSearchClose" href="javascript:searchBox.CloseResultsWindow()"><img id="MSearchCloseImg" border="0" src="search/close.png" alt=""/></a>
          </span>
        </div>
      </li>
    </ul>
  </div>
  <div id="navrow2" class="tabs2">
    <ul class="tablist">
      <li><a href="annotated.html"><span>Class&#160;List</span></a></li>
      <li><a href="classes.html"><span>Class&#160;Index</span></a></li>
      <li><a href="hierarchy.html"><span>Class&#160;Hierarchy</span></a></li>
      <li><a href="functions.html"><span>Class&#160;Members</span></a></li>
    </ul>
  </div>
<!-- window showing the filter options -->
<div id="MSearchSelectWindow"
     onmouseover="return searchBox.OnSearchSelectShow()"
     onmouseout="return searchBox.OnSearchSelectHide()"
     onkeydown="return searchBox.OnSearchSelectKey(event)">
</div>

<!-- iframe showing the search results (closed by default) -->
<div id="MSearchResultsWindow">
<iframe src="javascript:void(0)" frameborder="0" 
        name="MSearchResults" id="MSearchResults">
</iframe>
</div>

</div><!-- top -->
<div class="header">
  <div class="summary">
<a href="#pub-attribs">Public Attributes</a> &#124;
<a href="#pub-methods">Public Member Functions</a> &#124;
<a href="classop__t-members.html">List of all members</a>  </div>
  <div class="headertitle">
<div class="title">op_t Class Reference<div class="ingroups"><a class="el" href="group__operands.html">Operands</a> &raquo; <a class="el" href="group__operands__t.html">Operand structure</a></div></div>  </div>
</div><!--header-->
<div class="contents">
<a name="details" id="details"></a><h2 class="groupheader">Detailed Description</h2>
<div class="textblock"><p>Operand of an instruction. </p>
<p>This structure is filled by the analyzer. Upon entrance to the analyzer, some fields of this structure are initialized:</p><ul>
<li><a class="el" href="classop__t.html#a866a7d0be0dce15c155d93d097ef54b3" title="Type of operand (see Operand types) ">type</a>: <a class="el" href="group__o__.html#gad68bb114d00bf1541955467158677fa6" title="No Operand. ">o_void</a></li>
<li><a class="el" href="classop__t.html#aa9c6feff3830cbffaecea8fe87b926a0" title="Offset of operand value from the instruction start (0 means unknown). ">offb</a>: 0</li>
<li><a class="el" href="classop__t.html#a35f553bb6a9a7f5efe895617e575a2e1" title="Same as offb (some operands have 2 numeric values used to form an operand). ">offo</a>: 0</li>
<li><a class="el" href="classop__t.html#ae8f87e3147e90326420de6b78d97bd2a" title="Operand flags ">flags</a>: <a class="el" href="group___o_f__.html#ga0b79d1666f5843ac4599ebb3d158adee" title="should the operand be displayed? ">OF_SHOW</a> </li>
</ul>
</div><table class="memberdecls">
<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="pub-attribs"></a>
Public Attributes</h2></td></tr>
<tr class="memitem:a05e897e5a8da719eff0ff98614adffc8"><td class="memItemLeft" align="right" valign="top"><a class="el" href="pro_8h.html#a65f85814a8290f9797005d3b28e7e5fc">uchar</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classop__t.html#a05e897e5a8da719eff0ff98614adffc8">n</a></td></tr>
<tr class="memdesc:a05e897e5a8da719eff0ff98614adffc8"><td class="mdescLeft">&#160;</td><td class="mdescRight">Number of operand (0,1,2).  <a href="#a05e897e5a8da719eff0ff98614adffc8">More...</a><br /></td></tr>
<tr class="separator:a05e897e5a8da719eff0ff98614adffc8"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a866a7d0be0dce15c155d93d097ef54b3"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a866a7d0be0dce15c155d93d097ef54b3"></a>
<a class="el" href="ua_8hpp.html#aaf9da6ae7e8b201108fc225adf13b4d9">optype_t</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classop__t.html#a866a7d0be0dce15c155d93d097ef54b3">type</a></td></tr>
<tr class="memdesc:a866a7d0be0dce15c155d93d097ef54b3"><td class="mdescLeft">&#160;</td><td class="mdescRight">Type of operand (see <a class="el" href="group__o__.html">Operand types</a>) <br /></td></tr>
<tr class="separator:a866a7d0be0dce15c155d93d097ef54b3"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:aa9c6feff3830cbffaecea8fe87b926a0"><td class="memItemLeft" align="right" valign="top">char&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classop__t.html#aa9c6feff3830cbffaecea8fe87b926a0">offb</a></td></tr>
<tr class="memdesc:aa9c6feff3830cbffaecea8fe87b926a0"><td class="mdescLeft">&#160;</td><td class="mdescRight">Offset of operand value from the instruction start (0 means unknown).  <a href="#aa9c6feff3830cbffaecea8fe87b926a0">More...</a><br /></td></tr>
<tr class="separator:aa9c6feff3830cbffaecea8fe87b926a0"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a35f553bb6a9a7f5efe895617e575a2e1"><td class="memItemLeft" align="right" valign="top">char&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classop__t.html#a35f553bb6a9a7f5efe895617e575a2e1">offo</a></td></tr>
<tr class="memdesc:a35f553bb6a9a7f5efe895617e575a2e1"><td class="mdescLeft">&#160;</td><td class="mdescRight">Same as <a class="el" href="classop__t.html#aa9c6feff3830cbffaecea8fe87b926a0" title="Offset of operand value from the instruction start (0 means unknown). ">offb</a> (some operands have 2 numeric values used to form an operand).  <a href="#a35f553bb6a9a7f5efe895617e575a2e1">More...</a><br /></td></tr>
<tr class="separator:a35f553bb6a9a7f5efe895617e575a2e1"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ae8f87e3147e90326420de6b78d97bd2a"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="ae8f87e3147e90326420de6b78d97bd2a"></a>
<a class="el" href="pro_8h.html#a65f85814a8290f9797005d3b28e7e5fc">uchar</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classop__t.html#ae8f87e3147e90326420de6b78d97bd2a">flags</a></td></tr>
<tr class="memdesc:ae8f87e3147e90326420de6b78d97bd2a"><td class="mdescLeft">&#160;</td><td class="mdescRight"><a class="el" href="group___o_f__.html">Operand flags</a> <br /></td></tr>
<tr class="separator:ae8f87e3147e90326420de6b78d97bd2a"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a9d0ea64a2929fc998bca6cebd1b91c09"><td class="memItemLeft" align="right" valign="top">op_dtype_t&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classop__t.html#a9d0ea64a2929fc998bca6cebd1b91c09">dtype</a></td></tr>
<tr class="memdesc:a9d0ea64a2929fc998bca6cebd1b91c09"><td class="mdescLeft">&#160;</td><td class="mdescRight">Type of operand value (see <a class="el" href="group__dt__.html">Operand value types</a>).  <a href="#a9d0ea64a2929fc998bca6cebd1b91c09">More...</a><br /></td></tr>
<tr class="separator:a9d0ea64a2929fc998bca6cebd1b91c09"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a544637200eb2a3c246c6db3bb4500bd2"><td class="memItemLeft" ><a class="anchor" id="a544637200eb2a3c246c6db3bb4500bd2"></a>
union {</td></tr>
<tr class="memitem:a39a77911fa521dcd8548183d3eaef2bb"><td class="memItemLeft" >
&#160;&#160;&#160;<a class="el" href="pro_8h.html#a05f6b0ae8f6a6e135b0e290c25fe0e4e">uint16</a>&#160;&#160;&#160;<a class="el" href="classop__t.html#a428edf0d3e487135e3d08bd5a65772e4">reg</a></td></tr>
<tr class="memdesc:a39a77911fa521dcd8548183d3eaef2bb"><td class="mdescLeft">&#160;</td><td class="mdescRight">number of register (<a class="el" href="group__o__.html#gab490f48c733f3d29c700bb5d70ecc198" title="General Register (al,ax,es,ds...). ">o_reg</a>) <br /></td></tr>
<tr class="separator:a39a77911fa521dcd8548183d3eaef2bb"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a6325f0805435b2944d05bb1a8a910881"><td class="memItemLeft" >&#160;&#160;&#160;<a class="el" href="pro_8h.html#a05f6b0ae8f6a6e135b0e290c25fe0e4e">uint16</a>&#160;&#160;&#160;<a class="el" href="classop__t.html#a583f4819af0dc38593765cd7e6ce17cf">phrase</a></td></tr>
<tr class="memdesc:a6325f0805435b2944d05bb1a8a910881"><td class="mdescLeft">&#160;</td><td class="mdescRight">number of register phrase (<a class="el" href="group__o__.html#ga622c0d3c3c8af0bed284a02b496ec288" title="Memory Ref [Base Reg + Index Reg]. ">o_phrase</a>,<a class="el" href="group__o__.html#ga2ae70c4ac00043f25a469a506a6f504f" title="Memory Reg [Base Reg + Index Reg + Displacement]. ">o_displ</a>).  <a href="#a6325f0805435b2944d05bb1a8a910881">More...</a><br /></td></tr>
<tr class="separator:a6325f0805435b2944d05bb1a8a910881"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a544637200eb2a3c246c6db3bb4500bd2"><td class="memItemLeft" valign="top">};&#160;</td><td class="memItemRight" valign="bottom"></td></tr>
<tr class="separator:a544637200eb2a3c246c6db3bb4500bd2"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a3d0e4d6351874fc9f0e925af33783fca"><td class="memItemLeft" ><a class="anchor" id="a3d0e4d6351874fc9f0e925af33783fca"></a>
union {</td></tr>
<tr class="memitem:a7748e72d9c568d0d2155965e4b896d45"><td class="memItemLeft" >&#160;&#160;&#160;<a class="el" href="pro_8h.html#aef265b11f25357d520dcfd40aa8c18f3">uval_t</a>&#160;&#160;&#160;<a class="el" href="classop__t.html#a6baa38b521c143a794640d82df109ae2">value</a></td></tr>
<tr class="memdesc:a7748e72d9c568d0d2155965e4b896d45"><td class="mdescLeft">&#160;</td><td class="mdescRight">operand value (<a class="el" href="group__o__.html#ga85e77bd8098a47465cd8e1193b6e154c" title="Immediate Value. ">o_imm</a>) or outer displacement (<a class="el" href="group__o__.html#ga2ae70c4ac00043f25a469a506a6f504f" title="Memory Reg [Base Reg + Index Reg + Displacement]. ">o_displ</a>+<a class="el" href="group___o_f__.html#gaf5cdb56eaaa72c4beacc2c87a67eefc8" title="outer displacement exists. ">OF_OUTER_DISP</a>).  <a href="#a7748e72d9c568d0d2155965e4b896d45">More...</a><br /></td></tr>
<tr class="separator:a7748e72d9c568d0d2155965e4b896d45"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:aa2d8ba2c500a0743040a743a7fdcd458"><td class="memItemLeft" >
&#160;&#160;&#160;struct {</td></tr>
<tr class="memitem:a74571dfb6ef4bd1bcb3e2996a2c0aaee"><td class="memItemLeft" >
&#160;&#160;&#160;&#160;&#160;&#160;<a class="el" href="pro_8h.html#a05f6b0ae8f6a6e135b0e290c25fe0e4e">uint16</a>&#160;&#160;&#160;<b>low</b></td></tr>
<tr class="separator:a74571dfb6ef4bd1bcb3e2996a2c0aaee"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:aed221af8f97d24b241a0b9d6a24ea544"><td class="memItemLeft" >
&#160;&#160;&#160;&#160;&#160;&#160;<a class="el" href="pro_8h.html#a05f6b0ae8f6a6e135b0e290c25fe0e4e">uint16</a>&#160;&#160;&#160;<b>high</b></td></tr>
<tr class="separator:aed221af8f97d24b241a0b9d6a24ea544"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:aa2d8ba2c500a0743040a743a7fdcd458"><td class="memItemLeft" valign="top">&#160;&#160;&#160;}&#160;&#160;&#160;<a class="el" href="classop__t.html#ad5a7daf2408a1094cc051566443911ec">value_shorts</a></td></tr>
<tr class="memdesc:aa2d8ba2c500a0743040a743a7fdcd458"><td class="mdescLeft">&#160;</td><td class="mdescRight">This structure is defined for your convenience only. <br /></td></tr>
<tr class="separator:aa2d8ba2c500a0743040a743a7fdcd458"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a3d0e4d6351874fc9f0e925af33783fca"><td class="memItemLeft" valign="top">};&#160;</td><td class="memItemRight" valign="bottom"></td></tr>
<tr class="separator:a3d0e4d6351874fc9f0e925af33783fca"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a7c95dad1abd5897e4f8ce90daff259d2"><td class="memItemLeft" ><a class="anchor" id="a7c95dad1abd5897e4f8ce90daff259d2"></a>
union {</td></tr>
<tr class="memitem:af5ea33255f552b52053d16316e33c889"><td class="memItemLeft" >&#160;&#160;&#160;<a class="el" href="pro_8h.html#a7b0aeaed04e477c02cf8ea3452002d1a">ea_t</a>&#160;&#160;&#160;<a class="el" href="classop__t.html#acaaeff517df0b7156b4b8521a3900cdc">addr</a></td></tr>
<tr class="memdesc:af5ea33255f552b52053d16316e33c889"><td class="mdescLeft">&#160;</td><td class="mdescRight">virtual address pointed or used by the operand.  <a href="#af5ea33255f552b52053d16316e33c889">More...</a><br /></td></tr>
<tr class="separator:af5ea33255f552b52053d16316e33c889"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a0da9d9b5c84aeef9cd86fb49110ec923"><td class="memItemLeft" >
&#160;&#160;&#160;struct {</td></tr>
<tr class="memitem:a82bd0facb990e321a88e3b218836112b"><td class="memItemLeft" >
&#160;&#160;&#160;&#160;&#160;&#160;<a class="el" href="pro_8h.html#a05f6b0ae8f6a6e135b0e290c25fe0e4e">uint16</a>&#160;&#160;&#160;<b>low</b></td></tr>
<tr class="separator:a82bd0facb990e321a88e3b218836112b"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a11a0ed8d337eb15cadff52732e31cdc5"><td class="memItemLeft" >
&#160;&#160;&#160;&#160;&#160;&#160;<a class="el" href="pro_8h.html#a05f6b0ae8f6a6e135b0e290c25fe0e4e">uint16</a>&#160;&#160;&#160;<b>high</b></td></tr>
<tr class="separator:a11a0ed8d337eb15cadff52732e31cdc5"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a0da9d9b5c84aeef9cd86fb49110ec923"><td class="memItemLeft" valign="top">&#160;&#160;&#160;}&#160;&#160;&#160;<a class="el" href="classop__t.html#ae049b56abf0cd02873a3c9a775e5e182">addr_shorts</a></td></tr>
<tr class="memdesc:a0da9d9b5c84aeef9cd86fb49110ec923"><td class="mdescLeft">&#160;</td><td class="mdescRight">This structure is defined for your convenience only. <br /></td></tr>
<tr class="separator:a0da9d9b5c84aeef9cd86fb49110ec923"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a7c95dad1abd5897e4f8ce90daff259d2"><td class="memItemLeft" valign="top">};&#160;</td><td class="memItemRight" valign="bottom"></td></tr>
<tr class="separator:a7c95dad1abd5897e4f8ce90daff259d2"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a7d2fe43c8af07ab0e183ef2568657b15"><td class="memItemLeft" ><a class="anchor" id="a7d2fe43c8af07ab0e183ef2568657b15"></a>
union {</td></tr>
<tr class="memitem:a16318cfdc641940fd50d1b6eec40dd14"><td class="memItemLeft" >&#160;&#160;&#160;<a class="el" href="pro_8h.html#a7b0aeaed04e477c02cf8ea3452002d1a">ea_t</a>&#160;&#160;&#160;<a class="el" href="classop__t.html#afb5775d8aaa7bcefcb17d51c0b298135">specval</a></td></tr>
<tr class="memdesc:a16318cfdc641940fd50d1b6eec40dd14"><td class="mdescLeft">&#160;</td><td class="mdescRight">This field may be used as you want.  <a href="#a16318cfdc641940fd50d1b6eec40dd14">More...</a><br /></td></tr>
<tr class="separator:a16318cfdc641940fd50d1b6eec40dd14"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a5557b7d08b7ba05dfaced88e75a50df4"><td class="memItemLeft" >
&#160;&#160;&#160;struct {</td></tr>
<tr class="memitem:ae351aa06a205dd209d94a8bf9e987816"><td class="memItemLeft" >
&#160;&#160;&#160;&#160;&#160;&#160;<a class="el" href="pro_8h.html#a05f6b0ae8f6a6e135b0e290c25fe0e4e">uint16</a>&#160;&#160;&#160;<a class="el" href="classop__t.html#a029b857cc38051e1d99e71e56e42dc9d">low</a></td></tr>
<tr class="memdesc:ae351aa06a205dd209d94a8bf9e987816"><td class="mdescLeft">&#160;</td><td class="mdescRight">IBM PC: segment register number (<a class="el" href="group__o__.html#gac180aea251826e5e5e484905e116c4cc" title="Direct Memory Reference (DATA). ">o_mem</a>,<a class="el" href="group__o__.html#gac4a43a41f9a3a31b7bb6193e6d3cc447" title="Immediate Far Address (CODE). ">o_far</a>,<a class="el" href="group__o__.html#ga05209644e1ec11a2b0d96809bb60d6d8" title="Immediate Near Address (CODE). ">o_near</a>) <br /></td></tr>
<tr class="separator:ae351aa06a205dd209d94a8bf9e987816"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a630f5124d5148c333e763ed7b44275c1"><td class="memItemLeft" >
&#160;&#160;&#160;&#160;&#160;&#160;<a class="el" href="pro_8h.html#a05f6b0ae8f6a6e135b0e290c25fe0e4e">uint16</a>&#160;&#160;&#160;<a class="el" href="classop__t.html#a5f1ea4925feeb1b257cf9c65a2957553">high</a></td></tr>
<tr class="memdesc:a630f5124d5148c333e763ed7b44275c1"><td class="mdescLeft">&#160;</td><td class="mdescRight">IBM PC: segment selector value (<a class="el" href="group__o__.html#gac180aea251826e5e5e484905e116c4cc" title="Direct Memory Reference (DATA). ">o_mem</a>,<a class="el" href="group__o__.html#gac4a43a41f9a3a31b7bb6193e6d3cc447" title="Immediate Far Address (CODE). ">o_far</a>,<a class="el" href="group__o__.html#ga05209644e1ec11a2b0d96809bb60d6d8" title="Immediate Near Address (CODE). ">o_near</a>) <br /></td></tr>
<tr class="separator:a630f5124d5148c333e763ed7b44275c1"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a5557b7d08b7ba05dfaced88e75a50df4"><td class="memItemLeft" valign="top">&#160;&#160;&#160;}&#160;&#160;&#160;<a class="el" href="classop__t.html#a7de95505208df889b3cbc4ee42394365">specval_shorts</a></td></tr>
<tr class="memdesc:a5557b7d08b7ba05dfaced88e75a50df4"><td class="mdescLeft">&#160;</td><td class="mdescRight">This structure is defined for your convenience only. <br /></td></tr>
<tr class="separator:a5557b7d08b7ba05dfaced88e75a50df4"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a7d2fe43c8af07ab0e183ef2568657b15"><td class="memItemLeft" valign="top">};&#160;</td><td class="memItemRight" valign="bottom"></td></tr>
<tr class="separator:a7d2fe43c8af07ab0e183ef2568657b15"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr><td colspan="2"><div class="groupHeader">Special flags</div></td></tr>
<tr><td colspan="2"><div class="groupText"><p>The following fields are used only in idp modules.</p>
<p>You may use them as you want to store additional information about the operand. </p>
</div></td></tr>
<tr class="memitem:aec72f131837b3fc28e54bc0bfa2ded44"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="aec72f131837b3fc28e54bc0bfa2ded44"></a>
char&#160;</td><td class="memItemRight" valign="bottom"><b>specflag1</b></td></tr>
<tr class="separator:aec72f131837b3fc28e54bc0bfa2ded44"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:afa6bd993b2583da0ef6104fdea58d018"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="afa6bd993b2583da0ef6104fdea58d018"></a>
char&#160;</td><td class="memItemRight" valign="bottom"><b>specflag2</b></td></tr>
<tr class="separator:afa6bd993b2583da0ef6104fdea58d018"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:aec11b11597687e6a78a1d26784b052bf"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="aec11b11597687e6a78a1d26784b052bf"></a>
char&#160;</td><td class="memItemRight" valign="bottom"><b>specflag3</b></td></tr>
<tr class="separator:aec11b11597687e6a78a1d26784b052bf"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ace8112a00acbf6e77c83b5da8b79695e"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="ace8112a00acbf6e77c83b5da8b79695e"></a>
char&#160;</td><td class="memItemRight" valign="bottom"><b>specflag4</b></td></tr>
<tr class="separator:ace8112a00acbf6e77c83b5da8b79695e"><td class="memSeparator" colspan="2">&#160;</td></tr>
</table><table class="memberdecls">
<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="pub-methods"></a>
Public Member Functions</h2></td></tr>
<tr class="memitem:a9d1070bb119d87604ada43417f8a4170"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a9d1070bb119d87604ada43417f8a4170"></a>
void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classop__t.html#a9d1070bb119d87604ada43417f8a4170">set_shown</a> ()</td></tr>
<tr class="memdesc:a9d1070bb119d87604ada43417f8a4170"><td class="mdescLeft">&#160;</td><td class="mdescRight">Set operand to be shown. <br /></td></tr>
<tr class="separator:a9d1070bb119d87604ada43417f8a4170"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ad5e48d7a74b744f1153decb598fc721a"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="ad5e48d7a74b744f1153decb598fc721a"></a>
void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classop__t.html#ad5e48d7a74b744f1153decb598fc721a">clr_shown</a> ()</td></tr>
<tr class="memdesc:ad5e48d7a74b744f1153decb598fc721a"><td class="mdescLeft">&#160;</td><td class="mdescRight">Set operand to hidden. <br /></td></tr>
<tr class="separator:ad5e48d7a74b744f1153decb598fc721a"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a42bd02d3a2dd99158ac16156a6920fe5"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a42bd02d3a2dd99158ac16156a6920fe5"></a>
bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classop__t.html#a42bd02d3a2dd99158ac16156a6920fe5">shown</a> () const </td></tr>
<tr class="memdesc:a42bd02d3a2dd99158ac16156a6920fe5"><td class="mdescLeft">&#160;</td><td class="mdescRight">Is operand set to be shown? <br /></td></tr>
<tr class="separator:a42bd02d3a2dd99158ac16156a6920fe5"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a21740e5993e9d6ad290a474b7494f4ab"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a21740e5993e9d6ad290a474b7494f4ab"></a>
bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classop__t.html#a21740e5993e9d6ad290a474b7494f4ab">is_reg</a> (int r) const </td></tr>
<tr class="memdesc:a21740e5993e9d6ad290a474b7494f4ab"><td class="mdescLeft">&#160;</td><td class="mdescRight">Is register operand? <br /></td></tr>
<tr class="separator:a21740e5993e9d6ad290a474b7494f4ab"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a1b5d97a90c03fe1a5999286ab31aba0b"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a1b5d97a90c03fe1a5999286ab31aba0b"></a>
bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classop__t.html#a1b5d97a90c03fe1a5999286ab31aba0b">is_imm</a> (<a class="el" href="pro_8h.html#aef265b11f25357d520dcfd40aa8c18f3">uval_t</a> v) const </td></tr>
<tr class="memdesc:a1b5d97a90c03fe1a5999286ab31aba0b"><td class="mdescLeft">&#160;</td><td class="mdescRight">Is immediate operand? <br /></td></tr>
<tr class="separator:a1b5d97a90c03fe1a5999286ab31aba0b"><td class="memSeparator" colspan="2">&#160;</td></tr>
</table>
<h2 class="groupheader">Member Data Documentation</h2>
<a class="anchor" id="a05e897e5a8da719eff0ff98614adffc8"></a>
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname"><a class="el" href="pro_8h.html#a65f85814a8290f9797005d3b28e7e5fc">uchar</a> op_t::n</td>
        </tr>
      </table>
</div><div class="memdoc">

<p>Number of operand (0,1,2). </p>
<p>Initialized once at the start of work. You have no right to change its value. </p>

</div>
</div>
<a class="anchor" id="aa9c6feff3830cbffaecea8fe87b926a0"></a>
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">char op_t::offb</td>
        </tr>
      </table>
</div><div class="memdoc">

<p>Offset of operand value from the instruction start (0 means unknown). </p>
<p>Of course this field is meaningful only for certain types of operands. Leave it equal to zero if the operand has no offset. This offset should point to the 'interesting' part of operand. For example, it may point to the address of a function in </p><pre class="fragment">call func </pre><p> or it may point to bytes holding '5' in </p><pre class="fragment">mov  ax, [bx+5] </pre><p> Usually bytes pointed to this offset are relocated (have fixup information). </p>

</div>
</div>
<a class="anchor" id="a35f553bb6a9a7f5efe895617e575a2e1"></a>
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">char op_t::offo</td>
        </tr>
      </table>
</div><div class="memdoc">

<p>Same as <a class="el" href="classop__t.html#aa9c6feff3830cbffaecea8fe87b926a0" title="Offset of operand value from the instruction start (0 means unknown). ">offb</a> (some operands have 2 numeric values used to form an operand). </p>
<p>This field is used for the second part of operand if it exists. Currently this field is used only for outer offsets of Motorola processors. Leave it equal to zero if the operand has no offset. </p>

</div>
</div>
<a class="anchor" id="a9d0ea64a2929fc998bca6cebd1b91c09"></a>
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">op_dtype_t op_t::dtype</td>
        </tr>
      </table>
</div><div class="memdoc">

<p>Type of operand value (see <a class="el" href="group__dt__.html">Operand value types</a>). </p>
<p>Usually first 9 types are used. This is the type of the operand itself, not the size of the addressing mode. for example, byte ptr [epb+32_bit_offset] will have <a class="el" href="group__dt__.html#ga7b3131e3cc11e88be1e80a439829b293" title="8 bit ">dt_byte</a> type. </p>

</div>
</div>
<a class="anchor" id="a583f4819af0dc38593765cd7e6ce17cf"></a>
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname"><a class="el" href="pro_8h.html#a05f6b0ae8f6a6e135b0e290c25fe0e4e">uint16</a> op_t::phrase</td>
        </tr>
      </table>
</div><div class="memdoc">

<p>number of register phrase (<a class="el" href="group__o__.html#ga622c0d3c3c8af0bed284a02b496ec288" title="Memory Ref [Base Reg + Index Reg]. ">o_phrase</a>,<a class="el" href="group__o__.html#ga2ae70c4ac00043f25a469a506a6f504f" title="Memory Reg [Base Reg + Index Reg + Displacement]. ">o_displ</a>). </p>
<p>you yourself define numbers of phrases as you like </p>

</div>
</div>
<a class="anchor" id="a6baa38b521c143a794640d82df109ae2"></a>
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname"><a class="el" href="pro_8h.html#aef265b11f25357d520dcfd40aa8c18f3">uval_t</a> op_t::value</td>
        </tr>
      </table>
</div><div class="memdoc">

<p>operand value (<a class="el" href="group__o__.html#ga85e77bd8098a47465cd8e1193b6e154c" title="Immediate Value. ">o_imm</a>) or outer displacement (<a class="el" href="group__o__.html#ga2ae70c4ac00043f25a469a506a6f504f" title="Memory Reg [Base Reg + Index Reg + Displacement]. ">o_displ</a>+<a class="el" href="group___o_f__.html#gaf5cdb56eaaa72c4beacc2c87a67eefc8" title="outer displacement exists. ">OF_OUTER_DISP</a>). </p>
<p>integer values should be in IDA's (little-endian) order. when using <a class="el" href="ieee_8h.html#af8dc2b2c4e5843884838bb6a430cbf2f" title="Standard IEEE 754 floating point conversion function. ">ieee_realcvt()</a>, floating point values should be in the processor's native byte order. <a class="el" href="group__dt__.html#ga8cb6ffc96fb9fec3a6fb00b57316bac9" title="8 byte ">dt_double</a> values take up 8 bytes (value and addr fields for 32-bit modules). NB: in case a <a class="el" href="group__dt__.html#ga39d680a96eebfed96dbbd9c20d7066c3" title="32 bit ">dt_dword</a>/<a class="el" href="group__dt__.html#gaa10505ff3777d1c702dc0fcb486a6f79" title="64 bit ">dt_qword</a> immediate is forced to float by user, the kernel converts it to processor's native order before calling FP conversion routines. </p>

</div>
</div>
<a class="anchor" id="acaaeff517df0b7156b4b8521a3900cdc"></a>
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname"><a class="el" href="pro_8h.html#a7b0aeaed04e477c02cf8ea3452002d1a">ea_t</a> op_t::addr</td>
        </tr>
      </table>
</div><div class="memdoc">

<p>virtual address pointed or used by the operand. </p>
<p>(<a class="el" href="group__o__.html#gac180aea251826e5e5e484905e116c4cc" title="Direct Memory Reference (DATA). ">o_mem</a>,<a class="el" href="group__o__.html#ga2ae70c4ac00043f25a469a506a6f504f" title="Memory Reg [Base Reg + Index Reg + Displacement]. ">o_displ</a>,<a class="el" href="group__o__.html#gac4a43a41f9a3a31b7bb6193e6d3cc447" title="Immediate Far Address (CODE). ">o_far</a>,<a class="el" href="group__o__.html#ga05209644e1ec11a2b0d96809bb60d6d8" title="Immediate Near Address (CODE). ">o_near</a>) </p>

</div>
</div>
<a class="anchor" id="afb5775d8aaa7bcefcb17d51c0b298135"></a>
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname"><a class="el" href="pro_8h.html#a7b0aeaed04e477c02cf8ea3452002d1a">ea_t</a> op_t::specval</td>
        </tr>
      </table>
</div><div class="memdoc">

<p>This field may be used as you want. </p>

</div>
</div>
<hr/>The documentation for this class was generated from the following file:<ul>
<li><a class="el" href="ua_8hpp.html">ua.hpp</a></li>
</ul>
</div><!-- contents -->
<!-- start footer part -->
<hr class="footer"/><address class="footer"><small>
Generated by &#160;<a href="http://www.doxygen.org/index.html">
<img class="footer" src="doxygen.png" alt="doxygen"/>
</a> 1.8.9.1
</small></address>
</body>
</html>
